package com.inspur.security.cbb3.kms.keymanager.keyorders.vo;

import com.inspur.security.cbb3.kms.utils.RegExpUtil;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Pattern;
import javax.validation.constraints.Size;

/**
 * @Description	 密钥订单新增对象
 * @author  lijunchang
 */
@Data
public class KeyOrdersAddVO{

	/**
	 * 密钥类型--来自SecretKeyType枚举
	 */
	@NotBlank
	private String type;

	/**
	 * 密钥名称
	 */
	@NotBlank
	@Size(min = 4,max = 50)
	@Pattern(regexp = RegExpUtil.keyNameReg)
	private String name;

	/**
	 * 密钥算法
	 */
	@NotBlank
	private String algorithm;

	/**
	 * 密钥长度
	 */
	@NotBlank
	private String bitLength;

	/**
	 * 密钥有效期
	 */
	private String expiration;

	/**
	 * 密钥的密码，符合校验规则
	 */
	private String password;


	/**
	 * 密钥格式，PKCS1/PKCS8等
	 */
	private String keyFormat;

	/**
	 * 输出格式，hex,pem等
	 */
	private String outputFormat;

	/**
	 * 对传入password进行加密的二级密钥uuid
	 */
	private String kekId;

}
